package example.workshop1.lesson8;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;

import java.util.Arrays;

@SpringBootApplication
public class Workshop1Application {
    public static void main(String[] args) {
        ApplicationContext appContext = SpringApplication.run(Workshop1Application.class, args);

//      ContentBasedFilter cbf1 = appContext.getBean(ContentBasedFilter.class);
//      ContentBasedFilter cbf2 = appContext.getBean(ContentBasedFilter.class);
//      ContentBasedFilter cbf3 = appContext.getBean(ContentBasedFilter.class);
//
//      System.out.println(cbf1);
//      System.out.println(cbf2);
//      System.out.println(cbf3);


//      CollaborativeFilter cf1 = appContext.getBean(CollaborativeFilter.class);
//      CollaborativeFilter cf2 = appContext.getBean(CollaborativeFilter.class);
//      CollaborativeFilter cf3 = appContext.getBean(CollaborativeFilter.class);
//
//      System.out.println(cf1);
//      System.out.println(cf2);
//      System.out.println(cf3);

//        System.out.println("\n*************************************************");
//        System.out.println("Calling getBean() on RecommenderImplementation");
//        RecommenderImplementation recommender = appContext.getBean(RecommenderImplementation.class);
//        String[] result = recommender.recommendMovies("Finding Dory");
//        System.out.println(Arrays.toString(result));
//        //
//        System.out.println("\n*************************************************");
//        System.out.println("Calling getBean() on RecommenderImplementation2");
//        RecommenderImplementation2 recommender2 = appContext.getBean(RecommenderImplementation2.class);
//        result = recommender2.recommendMovies("Finding Dory");
//        System.out.println(Arrays.toString(result));
    }
}
